package control;

import java.util.ArrayList;

import model.dataAccess.AdmUsuario;
import model.entity.Usuario;

public class UsuarioBean {

	public String nombreDeUsuario = "";
	//public String validacion = "";
	public ArrayList<String> listaUsuarios;
	public ArrayList<Usuario> objetosUsuario;

	AdmUsuario admUsuario = new AdmUsuario();

	
	public AdmUsuario getAdmUsuario() {
		return admUsuario;
	}

	public void setAdmUsuario(AdmUsuario admUsuario) {
		this.admUsuario = admUsuario;
	}

	public String getNombreDeUsuario() {
		return nombreDeUsuario;
	}

	public void setNombreDeUsuario(String nombreDeUsuario) {
		this.nombreDeUsuario = nombreDeUsuario;
	}

	public ArrayList<String> getListaUsuarios() {
		this.listaUsuarios = new ArrayList<String>();
		ArrayList<Usuario> usuarios = admUsuario.getListaUsuario();
		for (int x = 0; x < usuarios.size(); x++) {
			this.listaUsuarios.add(usuarios.get(x).getNombreUsuario());
		}
		return this.listaUsuarios;
	}

	public void setListaUsuarios(ArrayList<String> nombresUsuarios) {
		this.listaUsuarios = nombresUsuarios;
	}

	public ArrayList<Usuario> getObjetosUsuario() {
		objetosUsuario = new ArrayList<Usuario>();
		objetosUsuario = admUsuario.getListaUsuario();
		return objetosUsuario;
	}

	public void setObjetosUsuario(ArrayList<Usuario> objetosUsuario) {
		this.objetosUsuario = objetosUsuario;
	}

	public String validarNombre(String nombre){
		System.out.println("validar nombreeeee" + nombre);
		//if (this.admUsuario.nombreRepetido(nombre))
		if(this.admUsuario.buscarUsuario(nombre)!=-1)
			return "Nombre de usuario no disponible";
		else
			return "";
	}
	
	public String registrarUsuario() {
		System.out.println("nombre usr" + this.nombreDeUsuario);
		admUsuario.usuarioActivo = new Usuario();
		return admUsuario.registrarUsuario(this.nombreDeUsuario);
	}

	public String cerrarSesion() {
		this.nombreDeUsuario = "";
		// this.validacion = "";
		this.admUsuario.usuarioActivo = null;
		System.out.print("cerrar sesion: " + this.admUsuario.usuarioActivo);
		return "pantallaInicio.jsp";
	}

	public String iniciarSesion() {
		int i = 0;
		admUsuario.usuarioActivo = new Usuario();
		ArrayList<Usuario> lista = this.admUsuario.getListaUsuario();
		if (lista != null) {
			while (i < lista.size()) {
				if (lista.get(i).getNombreUsuario().equals(nombreDeUsuario)) {
					admUsuario.usuarioActivo.setNombreUsuario(nombreDeUsuario);
					admUsuario.usuarioActivo.setIdUsuario(lista.get(i)
							.getIdUsuario());
					admUsuario.usuarioActivo.setPuntuacion(lista.get(i)
							.getPuntuacion());
					System.out.println("iniciar sesion: "
							+ admUsuario.getUsuarioActivo().getNombreUsuario()
							+ admUsuario.getUsuarioActivo().getIdUsuario());
					return "irAMenuPrincipal";
				}
				i++;
			}

		}
		return "pantallaInicio.jsp";
	}
}